/*
 * @(#)WorkflowProgressAttachment.java
 *
 * Copyright (c) 2003 DCIVision Ltd
 * All rights reserved.
 *
 * This software is the confidential and proprietary information of DCIVision
 * Ltd ("Confidential Information").  You shall not disclose such Confidential
 * Information and shall use it only in accordance with the terms of the license
 * agreement you entered into with DCIVision Ltd.
 */
package com.dcivision.workflow.bean;

import java.io.InputStream;

import com.dcivision.framework.bean.AbstractBaseObject;

/**
 * WorkflowProgressAttachment.java
 * 
 * This class is the serializable bean reflecting business logic uses.
 * It represents a attachment of a workflow progress. It can be a {@link com.dcivision.dms.bean.DmsDocument}
 * of a specific version, or an external uploaded file.
 * 
 * @author Angus Shiu
 * @company DCIVision Limited
 * @creation date 02/12/2003
 * @version $Revision: 1.6 $
 */
public class WorkflowProgressAttachment extends AbstractBaseObject {
  
  public static final String REVISION = "$Revision: 1.6 $";
  
  static final long serialVersionUID = -5254887824084708895L;
  
  private Integer mtmWorkflowProgressUserRecordID = null;
  private String attachmentName = null;
  private String attachmentType = null;
  private String externalID = null;
  private Integer contentSize = null;
  private String flowType = null;
  
  private InputStream dataStream = null;
  
  /** indicate for DMS version with specified version id */ //*TO FIX: COPY FROM OLD FRAMEWORK
  public static final String ATTACHED_DMS_VERSION_SYSTEM_ID = "V";
  /** indicate for DMS version with specified version label */ //*TO FIX: COPY FROM OLD FRAMEWORK
  public static final String ATTACHED_DMS_VERSION_LABEL = "L";
  /** indicate for stand alone attached file */
  public static final String ATTACHED_SINGLE_FILE = "S";
  /** indicate for document check in step */
  public static final String ATTACHED_NEW_CHECK_IN_DOCUMENT = "C";
  
  public WorkflowProgressAttachment() {
    super();
  }
  /**
   * @return Returns the mtmWorkflowProgressUserRecordID.
   */
  public Integer getMtmWorkflowProgressUserRecordID() { 
    return(this.mtmWorkflowProgressUserRecordID);
  }
  /**
   * @param mtmWorkflowProgressUserRecordID The mtmWorkflowProgressUserRecordID to set.
   */
  public void setMtmWorkflowProgressUserRecordID(Integer mtmWorkflowProgressUserRecordID) { 
    this.mtmWorkflowProgressUserRecordID = mtmWorkflowProgressUserRecordID;
  }
  /**
   * @return Returns the attachmentName.
   */
  public String getAttachmentName() { 
    return(this.attachmentName);
  }
  /**
   * @param attachmentName The attachmentName to set.
   */
  public void setAttachmentName(String attachmentName) { 
    this.attachmentName = attachmentName;
  }
  /**
   * @return Returns the attachmentType.
   */
  public String getAttachmentType() { 
    return(this.attachmentType);
  }
  /**
   * @param attachmentType The attachmentType to set.
   */
  public void setAttachmentType(String attachmentType) { 
    this.attachmentType = attachmentType;
  }
  /**
   * @return Returns the externalID.
   */
  public String getExternalID() { 
    return(this.externalID);
  }
  /**
   * @param externalID The externalID to set.
   */
  public void setExternalID(String externalID) { 
    this.externalID = externalID;
  }
  /**
   * @return Returns the contentSize.
   */
  public Integer getContentSize() { 
    return(this.contentSize);
  }
  /**
   * @param contentSize The contentSize to set.
   */
  public void setContentSize(Integer contentSize) { 
    this.contentSize = contentSize;
  }
  /**
   * @return Returns the flowType.
   */
  public String getFlowType() { 
    return(this.flowType);
  }
  /**
   * @param flowType The flowType to set.
   */
  public void setFlowType(String flowType) { 
    this.flowType = flowType;
  }
  /**
   * @return Returns the dataStream.
   */
  public InputStream getDataStream() {
    return(this.dataStream);
  }
  /**
   * @param dataStream The dataStream to set.
   */
  public void setDataStream(InputStream dataStream) {
    this.dataStream = dataStream;
  }
}
